// 后端卡片定义表对应的类型
export interface DashboardCardVo {
  id?: string
  cardCode: string     // 卡片编码(唯一标识)
  cardName: string     // 卡片名称
  componentName: string // 前端组件名称
  cardIcon?: string    // 卡片图标
  cardColor?: string   // 卡片颜色
  cardConfig?: string  // 卡片配置(JSON格式)
  prem?: string        // 权限标识
  gmtCreate?: string   // 创建时间
  gmtModify?: string   // 修改时间
  createBy?: string    // 创建人
  modifyBy?: string    // 修改人
  isDelete?: number    // 是否删除
}

// 布局卡片配置 - 对应后端LayoutCard
export interface LayoutCard {
  cardId: string       // 卡片ID
  width: number        // 卡片宽度
  height: number       // 卡片高度
  x: number            // X坐标
  y: number            // Y坐标
  order: number        // 排序
  config?: string      // 用户自定义配置JSON
}

// 布局配置 - 对应后端LayoutConfig
export interface LayoutConfig {
  cards: LayoutCard[]
}

// 后端用户布局表对应的类型
export interface DashboardLayoutVo {
  id?: string
  userId: string       // 用户ID
  layoutName: string   // 布局名称
  layoutConfig: string // 布局配置(JSON格式)
  gmtCreate?: string   // 创建时间
  gmtModify?: string   // 修改时间
  createBy?: string    // 创建人
  modifyBy?: string    // 修改人
  isDelete?: number    // 是否删除
}